package com.yida.wy.common.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import com.yida.wy.common.web.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 基础数据（房屋）对象 common_house
 * 20221130
 *
 * @author lqq
 * @date 2023-11-21
 */
@Data
@Table("gwj_base_house")
@ApiModel(value = "基础数据（房屋信息）对象")
public class WyBaseHouse extends BaseEntity {
	private static final long serialVersionUID = 1L;

	@Id(keyType = KeyType.Auto)
	@ApiModelProperty(value= "房屋ID")
	private Long houseId;

	@ApiModelProperty(value= "银行ID")
	private Long bankId;

	@ApiModelProperty(value= "房屋坐落")
	private String houseLocation;

	@ApiModelProperty(value= "楼层序号")
	private Integer floorNum;

	@ApiModelProperty(value= "分户序号")
	private Integer householdNum;

	@ApiModelProperty(value= "房牌号")
	private String roomNum;

	@ApiModelProperty(value= "户型")
	private String doorModel;

	@ApiModelProperty(value= "房屋用途")
	private String useType;

	@ApiModelProperty(value= "预测面积")
	private BigDecimal forecastSize;

	@ApiModelProperty(value= "实测面积")
	private BigDecimal actualSize;

	@ApiModelProperty(value= "房屋标识码")
	private String houseCode;

	@ApiModelProperty(value= "楼栋自然幢号")
	private String buildCode;

	@ApiModelProperty(value= "名义层")
	private String nominalLayer;

	@ApiModelProperty(value= "结构")
	private String buildFramework;

	@ApiModelProperty(value= "实缴金额")
	private BigDecimal depositMoney;

	@ApiModelProperty(value= "已使用金额")
	private BigDecimal usedMoney;

	@ApiModelProperty(value= "增值金额")
	private BigDecimal addedMoney;

	@ApiModelProperty(value= "冻结金额")
	private BigDecimal blockedMoney;

	@ApiModelProperty(value= "利息金额")
	private BigDecimal interestMoney;

	@ApiModelProperty(value= "当前余额")
	private BigDecimal currentMoney;

	@ApiModelProperty(value= "房屋价格")
	private BigDecimal housingPrice;

	@ApiModelProperty(value= "缴款面积")
	private BigDecimal depositSize;

	@ApiModelProperty(value= "是否为公用户(0=不是,1=是)")
	private String publicFlag;

	@ApiModelProperty(value= "产权证书编号")
	private String certificateNum;

	@JsonFormat(pattern = "yyyy-MM-dd")
	@ApiModelProperty(value= "公用户创建日期")
	private Date publicCreateTime;

	@ApiModelProperty(value= "地区ID")
	private Long areaId;

	@ApiModelProperty(value= "街道ID")
	private Long streetId;

	@ApiModelProperty(value= "是否限制登记")
	private String restrictRegisterFlag;

	@ApiModelProperty(value= "是否抵押登记")
	private String mortRegisterFlag;

	@ApiModelProperty(value= "是否产权登记")
	private String transferRegisterFlag;

	@ApiModelProperty(value= "是否总登记")
	private String initialRegisterFlag;

	@ApiModelProperty(value= "是否已预购商品房抵押权预告登记")
	private String housePredictMortRegisterFlag;

	@ApiModelProperty(value= "是否已预购商品房预告登记")
	private String housePredictRegisterFlag;

	@ApiModelProperty(value= "是否已合同登记备案")
	private String houseContractRegisterFlag;

	@ApiModelProperty(value= "是否已签约")
	private String contractSignFlag;

	@ApiModelProperty(value= "是否已认购")
	private String subscribeFlag;

	@ApiModelProperty(value= "是否预售许可")
	private String salePermitFlag;

	@ApiModelProperty(value= "是否是导入自建楼盘(0=否,1=是)")
	private String importFlag;

	@ApiModelProperty(value= "套内面积")
	private BigDecimal insideSize;
}
